home *** CD-ROM | disk | FTP | other *** search
/ Power Tools for Macintosh / Power Tools for Macintosh (SoftBit)(1992).iso / Applications / Mark My Words / That Manual Thing < prev   
Text File  |  1993-06-30  |  58KB  |  1,240 lines

  1.  
  2.  
  3.  
  4. That Manual Thing
  5.  
  6. (Mark My Words - at last!)
  7.  
  8.  
  9. Documenting: Mark My Words (version 1.0.0) © 1993 by Greg Swann
  10.  
  11.  
  12. 6/24/92
  13.  
  14.  
  15. Greg Swann
  16.  
  17. CompuServe: 70640,1574
  18.  
  19. USPS: P.O. Box 1724
  20.       Andover, MA 01810
  21.  
  22.       or
  23.  
  24.       1331 West Baseline Road, #236
  25.       Mesa, AZ 85202
  26.  
  27.  
  28.  
  29. Table of Contents
  30.  
  31. 0. Blah, blah, blah...
  32.  
  33. 1. Introductory chatter...
  34.  
  35. 2. Commercial, legal and other pertinent notices...
  36.  
  37. 3. Using Mark My Words: the big picture...
  38.  
  39. 4. Where the bodies are buried...
  40.  
  41. 5. Gloats and flourishes...
  42.  
  43. 6. Mark My Words in real life...
  44.  
  45. 7. About Greg Swann...
  46.  
  47. 8. Conclusion...
  48.  
  49.  
  50.  
  51. 0. Blah, blah, blah...
  52.  
  53. "You can rest when you die."
  54.  
  55.             - Charles Barkley
  56.  
  57. That's been my motto though this last round of development, and I've
  58. had occasion to refer to it more times than I expected.
  59.  
  60. Here's the story: we started this a _long_ time ago. Shane Stanley,
  61. uncompensated Vice President in Charge of Everything Else, had
  62. asked Chris Ryland of Em Software to write an MS-Word filter for
  63. QuarkXPress that would parse the Word binary _and_ parse any XPress
  64. Tags found in the text. Chris declined, proving himself possessed
  65. of the better part of valor. Having exhausted the pool of talented
  66. talent, Shane turned to me, undercompensated Vice President in
  67. Charge of Nothing But. I wasn't interested in writing an Xtension,
  68. but I did sign up to do this piece of software, Mark My Words.
  69.  
  70. But: I knew at the time that I didn't know enough to do it. Parsing
  71. someone else's binary and living in peace with three other pieces
  72. of software was, I felt, a bigger chunk of reality than I wanted to
  73. tear off at the time. That's why we did WordLess Plus, a game if
  74. lame pretaste of what we have here (WordLess Plus is FreeWare and
  75. is available in the DTPForum on CompuServe (as WLPLUS.CPT) and
  76. other services; from now on I'm just going to give the CIS file
  77. names, since the vectors don't change).
  78.  
  79. After that, we set about acquiring the skill set I knew we'd need
  80. for this: With Clip 'n' Save (C&S.CPT) we played with PICTs. With
  81. Lizzie Borden (LIZZIE.CPT) we worked out a way to soak up and spit
  82. out text very quickly. With Shane the Plane 2.0 (SPDEMO.CPT) we
  83. explored sensible, intelligent Drag & Drop strategies.
  84.  
  85. There was other stuff in there, including upgrades to XP8 (XP8.SEA)
  86. and Torquemada the Inquisitor (TORQUE.SEA), quick diversions like
  87. ShawBerry (BERRY.CPT), PixPex (PIXPEX.CPT) and A Sort of a Kind
  88. (ASOAK.CPT), plus the normal crush of making a living. Finally in
  89. December we got busy, completing the user interface and slamming
  90. away at the action routines.
  91.  
  92. We started with WriteNow 3.0 files, which we had planned to support
  93. in Mark My Words. We had to stop around Christmas for a couple of
  94. big contract jobs and by the time we popped MMW back off the stack,
  95. WriteNow had been sold to KissOfDeathWare (publishers of
  96. WordStarYouKidding?) and was selling for $37, bundled with 57 fonts
  97. and a golf game, slugging it out for shelf space at K-Mart.
  98.  
  99. Oh, well...
  100.  
  101. Then we moved to Arizona.
  102.  
  103. Best thing for us, but it cost time. Anyway, to make a long story
  104. interminable, it took us a while to get started even after we were
  105. ready to begin. Then it took _forever_ to finish.
  106.  
  107. None of this is such a terrible thing. The whole long while we were
  108. not doing this, we were learning how to do it, even when we weren't
  109. looking for lessons. Most of my early stuff derives from XP8 and
  110. Torquemada. Most of my recent stuff draws upon Lizzie Borden and
  111. Shane the Plane 2.0. But there is code in here from IntelliStudy,
  112. one of the contract jobs, which you will never see unless you pay a
  113. lot of money to take a bar review course. And even once we
  114. (re)commenced, we learned a lot. Not all of the lessons were
  115. pleasant, but all of them were valuable.
  116.  
  117. I tend to write very incrementally. Where another programmer might
  118. devote 20% of his time to coding, and the rest to debugging, I
  119. (normally) spend 95% of my time coding and debugging iteratively
  120. and 5% debugging after the fact. Total investment of labor is
  121. probably about the same, but I feel my way maximizes the
  122. satisfaction and minimizes the frustration.
  123.  
  124. Unfortunately, it didn't quite work this time. We hit a Word
  125. anomaly late in the test cycle and lost a week trying to find and
  126. fix it. It seems trivial when looked at from the back, but there
  127. was a span of time where I was convinced we were going to have to
  128. disable a key feature. Not cool. Not fun. Not timely in a product
  129. that was already _very_ late.
  130.  
  131. And, to compound all this, Mark My Words has a large pre-sale.
  132. People have had their money in my bank account for many months,
  133. which, I'm sure, has not been fun for any of us.
  134.  
  135. Well, all that's past. The Phoenix Suns have been in the NBA
  136. playoffs as we've been finishing this and - no causal connection,
  137. obviously - we've hit major milestones at about the same times. The
  138. outcome of the finals is still in doubt as I write this, but we
  139. take our cue from #34, power forward and MVP, Sir Charles Barkley:
  140. "You can rest when you die."
  141.  
  142.  
  143.  
  144. 1. Introductory chatter...
  145.  
  146. Okay, so what is this...?
  147.  
  148. Mark My Words is a very elaborate MS-Word binary to XPress Tags
  149. text filter. It eats Word 4.0, 5.0 or 5.1 files, interactively or
  150. by Drag & Drop, and converts the binary to QuarkXPress tagged text.
  151.  
  152. Answering the question: why?
  153.  
  154. * The Word filter that ships with Quark would be half-witted with a
  155. little more schooling. No beef, really, they're doing the 80% job
  156. that one can expect of an import filter. But Mark My Words converts
  157. 100% of everything that can be produced in Quark, converts it
  158. intelligently, and gives the user a very high degree of control
  159. over the conversion, permitting, for example, the omission of
  160. unwanted styling or the conversion of word processor-like styling
  161. to desktop publishing-like styling.
  162.  
  163. * Word has the potential to be an excellent "Story Editor" for
  164. Quark but for this: if you Save Text from XPress in Word format,
  165. you lose a _lot_ of styling Quark can produce but Word cannot. But
  166. if you save as XPress Tags, then edit in Word - _using_ Word
  167. styling such Cmd-Shift-B - then run it past Mark My Words, you
  168. retain all the original styling and all the new styling, plus you
  169. acquire the ability to do corrections in a familiar way with
  170. familiar keystrokes.
  171.  
  172. * Moreover, when drafting, you can key in XPress Tags constructs
  173. for features that Word does not support. For example: you’re using
  174. oodles of drop caps, and you’ve set up the styles the way you want
  175. them in XPress. But you really want the drop caps to be scaled 80%
  176. horizontally. Before, you had to either do the scaling in XPress
  177. (inconvenient), or do all your styling with tags (mind-numbing).
  178. Now you can do all your normal styling the Mac-way, and just throw
  179. a <h80> and <h100>  around your drop caps. Mark My Words will do
  180. the rest.
  181.  
  182. * Most significantly: converting the file to a text form with all
  183. styling retained permits you to massage the text with Word, another
  184. editor, or one of my text-banger utilities like ShawBerry or
  185. Torquemada. If you import with the Word filter, you keep the
  186. styling - even where it's bad - plus all the crap. With Mark My
  187. Words, you can omit or convert the styling and you end up with a
  188. file that can be cleaned up with very efficient tools. Moreover,
  189. the new file can be run as is through XP8 to get a massive amount
  190. of quality improvement for a negligible investment of labor.
  191.  
  192. Better filtration. Easier, faster editing. Infinitely better
  193. quality. Win, win, win - surely a better way of working...
  194.  
  195. As mentioned above, Mark My Words owes its origin to Shane Stanley.
  196. He wanted a way to work in Word and yet gain access to XPress Tags.
  197. At first I wasn't too sanguine about the idea, but I've learned to
  198. respect Shane's hunches. I wasn't all that hungry for the ability
  199. to style the Macintosh way, first because I don't create a lot of
  200. text for publishing, and second because I'm used to styling the
  201. text I get from clients directly in XPress Tags, using Torquemada.
  202. The bad part about doing things that way was that I was losing the
  203. italic and bold styling that the clients put into their files,
  204. which was a big pain. So despite my doubts, I was way sold on the
  205. concept after we finished WordLess Plus. I could keep what I wanted
  206. and throw away the rest.
  207.  
  208. From the get, we knew we wanted to support Em Software's Xtags.
  209. Xtags is a plug-compatible XPress Tags filter that offers a rich
  210. superset of the XPress Tags commands. It is highly recommended to
  211. Power Users of QuarkXPress. In MMW, we are supporting Xtags'
  212. ability to create in-line text and picture boxes in a tag stream.
  213. The advantage to this is, if you own Xtags, you can retain any
  214. pictures or in-line tables that are in your Word files.
  215.  
  216. One of the original design goals was to permit iterative re-editing
  217. (that is, taking a Word file, putting it through MMW, cleaning it
  218. up, then doing additional edits back in Word, continuing to use
  219. Word's styling commands, then putting it through MMW _again_, to
  220. convert the added styling). WordLess Plus supported this after a
  221. fashion, but Mark My Words does a much better job of it.
  222.  
  223. And: Shane wanted a way to insulate himself and others from bad
  224. selections when editing. Suppose you have a Word file with explicit
  225. tags in it, typed or inserted by Mark My Words, and you mis-select
  226. some part of those tags and change the styling. For example, you
  227. have:
  228.  
  229. <I>Lepton Local<I>
  230.  
  231. and you decide to make the title of that fine piece of software
  232. Bold-Italic instead of just Italic. You mis-select, making this
  233. much of the text bold:
  234.  
  235. >Lepton Local
  236.  
  237. If Mark My Words were not watching for exactly this kind of error,
  238. you would get:
  239.  
  240. <I<B>>Lepton Local<BI>
  241.  
  242. which would choke the XPress Tags filter and elicit a nasty note
  243. from Xtags.
  244.  
  245. Such deep thinkers are Shane and I that we've been pondering this
  246. problem since MMW was a gleam in Shane's eye. Instead of the
  247. erroneous tags above, MMW will produce:
  248.  
  249. <I><B>Lepton Local<BI>
  250.  
  251. No extra charge.
  252.  
  253. Finally, Shane and I went through about a bazillion rounds of User
  254. Interface development. What we wanted was a UI that would permit
  255. Power Users to take control over every little last thing but would
  256. not present a dizzying array of choices to users less frenetic in
  257. their pursuit of the arcane. I'm very proud of the results, and I
  258. wish to thank Shane publicly, as so many times before, for the
  259. gentle pushing he does in behalf of end-users (starting with
  260. himself, of course (grin), but good products are made by designers
  261. who are also hungry users).
  262.  
  263. I can't say enough good things about Shane, but I'll never stop
  264. trying. If there's anything you hate in software by me, blame me.
  265. But for anything you love, you can expect that at least part of the
  266. credit owes to a light on in a house - and a mind - in Nar Nar
  267. Goon, Victoria, Australia.
  268.  
  269. Mark My Words was tested by Shane, Mary Jo Kostya, Kip Shaw, Mike
  270. Arst, Brad Walrod and Chris Ryland. Shane, Mary Jo and Kip were the
  271. chief victims of the terrible anomaly found late, since it affected
  272. only 68040 machines; think about this when you hear the Clintons
  273. claim that the rich get a free ride (grin). This manual was looked
  274. over by Shane, Mary Jo, Kip, Mike and my dear wife, Ann Swann. None
  275. of them should be held accountable for any part of it, of course,
  276. since I always do what I want, despite excellent advice to the
  277. contrary.
  278.  
  279. On the subject: this file is written as plain text in DOS-like
  280. fashion (i.e., every line ending is a carriage return). It is
  281. produced in a FreeWare Programmer's editor called BBEdit by Rich
  282. Siegel (which is recommended). I've had mail about this, so I'll
  283. explain: I produce documents this way because doing so makes no
  284. presumptions about what software and fonts you might own. _Most_
  285. word processors can open, e.g., MS-Word files. But _all_ word
  286. processors can open _this_ file.
  287.  
  288. The original FreeWare WordLess Plus is available and will always be
  289. available for free. But: Mark My Words is commercial software: you
  290. can't use it (for long) without paying me. The copy of Mark My
  291. Words in this archive is a DemoWare version that will permit up to
  292. 32 launches and then forevermore refuse to do anything but be an
  293. automated salesman. It is a _fully functional_ demo. Nothing is
  294. crippled. A little bit of advertising is tacked on at the end of
  295. each file, but everything works exactly as documented here. The
  296. only inhibition is the one named: 32 launches, max. See
  297. "Commercial, legal and other pertinent notices" below for
  298. information on how to purchase unrestricted copies of Mark My
  299. Words.
  300.  
  301. TechnoBabble: Mark My Words is compatible with both Systems 7 and
  302. 6. It is AppleEvent-aware, so, presumably, you could script to it.
  303. It's 32-bit clean, MultiFinder-aware, doubles on sax (turn up the
  304. volume!), leaves no filmy residue on your fine china - all the
  305. usual stuff. In short (there will be much more later), it's
  306. everything you expect of up-to-the-microsecond Macintosh software.
  307.  
  308. And: this manual presumes a certain adeptitude with QuarkXPress
  309. and, especially, XPress Tags (if you’ve never used them before,
  310. take a look at Appendix C in the XPress manual). But to benefit
  311. from MMW, you need only a basic understanding of how tagging works.
  312.  
  313. If you've been following my meteoric rise to obscurity, you know
  314. that I'm an XPress Tags fanatic. If not, some explanation is due:
  315. XPress Tags is a Text Only language built into QuarkXPress (since
  316. version 3.0) that permits Quark to express and interpret almost
  317. everything it can do. As such, it is richer than any other file
  318. format Quark can import, and, hence, it allows users to do far more
  319. styling and clean-up using automated tools such as my own
  320. Torquemada and XP8. If this sounds like the "bad old days" to you,
  321. you're right - it is. XPress Tags is a mark-up language, exactly
  322. like those used in mainstream type systems and dedicated word
  323. processors. But: in this one case, things were better when they
  324. were worse. If you get a file that uses multiple spaces to
  325. pseudo-align columns, you can spend all afternoon selecting those
  326. space and typing tabs, or you can feed the file to XP8 and do the
  327. whole job plus a lot more in 30 seconds. If you want to get really
  328. radical with XPress Tags (not necessary to the use of Mark My
  329. Words, but potentially very useful in your daily work), a good
  330. place to begin is David Blatner's "The QuarkXPress Book" (Peachpit
  331. Press).
  332.  
  333.  
  334.  
  335. 2. Commercial, legal and other pertinent notices...
  336.  
  337. As mentioned above, this is a DemoWare version of Mark My Words,
  338. fully functional but limited to 32 launches. The full unrestricted
  339. commercial release can be obtained from Greg Swann at:
  340.  
  341.     P.O. Box 1724
  342.     Andover, MA 01810
  343.  
  344.     or
  345.  
  346.     1331 West Baseline Road, #236
  347.     Mesa, AZ 85202
  348.  
  349. Licenses are sold per machine, with a single license costing $50;
  350. 2-10 licenses are $45 each; and 11 or more licenses are $40 each.
  351. (Write me if you want to negotiate an unlimited site license.)
  352.  
  353. I've thoughtfully (grin) provided a TeachText order form with this
  354. archive. (Take note that this order form requires a PICT-aware
  355. version of TeachText; use the version that came with your System
  356. software, or open the file through some other PICT-aware software
  357. (such as PhotoShop or MacDraw).)
  358.  
  359. Why is this version DemoWare? As with everything in my life, there
  360. is philosophy here: I don't like crippled software. I don't think
  361. much of ShareWare. And I almost never buy "a pig in a poke". In
  362. deciding on a marketing scheme, I looked for something that would
  363. be most appealing to _me_, were I in your shoes. This is what I've
  364. come up with: a fully functional demo that lets you _find out_ if
  365. Mark My Words is a useful tool in your working environment. If it
  366. is (and obviously _I_ think it will be), then pay me. If it isn't,
  367. then ditch it when it starts to offer to make coupons for you as a
  368. full-time gig. A good deal all around, I think: no guilt for you,
  369. no guilting for me; maybe useful software for you, maybe useful
  370. money for me (grin).
  371.  
  372. (For those who must have it both ways: it would certainly be
  373. possible to download this archive again and again, just to get
  374. access to more launches. Even cleaner, a determined thief could
  375. keep a pristine copy and spawn duplicates to use until they're
  376. exhausted. My take on this is simple: so be it. I work _very_ hard
  377. on the things I make, and I don't want to think that my labor is
  378. going to support people who are overtly hostile to the life of the
  379. mind. But I certainly don't want to be _compensated_ for that
  380. unintended outcome. I may not get my due _from you_, but nature is
  381. just: in the long run, I'll get what's coming to me - and so will
  382. you.)
  383.  
  384. (And if this is the first time you've read a software manual by me:
  385. you'll get used to it... (grin))
  386.  
  387. Mark My Words, its source and executable code, and this poor excuse
  388. for a manual are Copyright (C) 1993 by Greg Swann. All rights are
  389. most emphatically reserved.
  390.  
  391. The unrestricted (non-DemoWare) version of Mark My Words is
  392. licensed for use on one machine by the person who paid for it. If
  393. you didn't pay for it, please do! I am one person, with a
  394. long-suffering family, not Conglomerated MegaSoft (not to imply
  395. that there's any virtue in ripping _them_ off!).
  396.  
  397. Mark My Words is delivered "as is", without any warranties,
  398. expressed or implied. It is not warranted to be useful _to_ anyone,
  399. _for_ anything, and in no wise am I to be held responsible for any
  400. unfortunate consequences resulting from its use or misuse. And I
  401. _hate_ having to say things like that. I do my best to write
  402. useful, simple, elegant, bug-free solutions to difficult problems.
  403. If you take it into your head that I represent your big chance to
  404. "strike it rich", you will pay a lot in legal fees to discover that
  405. you have miscalculated.
  406.  
  407. And: to those to whom the above disclaimers do not apply: forgive
  408. me for having to make them. It's _you_ whom I'm working for, for
  409. pay or for free. I appreciate your patronage and your support, and
  410. I wish we all could just comb the others out of our hair...
  411.  
  412. (Hey, it's a real 'personal' software company! (grin))
  413.  
  414.  
  415.  
  416. 3. Using Mark My Words: the big picture...
  417.  
  418. Mark My Words works on batches of files by Drag & Drop (under System
  419. 7) or interactively from its main dialog (the Open... button). Drag
  420. & Drop operation is relatively smart. In practice, the program will
  421. only stay resident in memory if you are demonstrably interacting
  422. with it. If you are doing no more than D&D batches, it will quit at
  423. the end of each batch. Works like this:
  424.  
  425. D&D only: Quits
  426.  
  427. Double-click launch, then D&D: Quits
  428.  
  429. Double-click launch, then Open...: Stays resident
  430.  
  431. Double-click launch, hit any setting/menu, then D&D: Stays resident
  432.  
  433. We did it this way so that, if you are making temporary changes to
  434. settings, you can still D&D, _but_ if you are just doing a D&D
  435. batch (the likely normal procedure), MMW will get out of memory
  436. without any effort on your part (nothing worse than having to Quit
  437. from a bunch of small things to permit PhotoShop to launch).
  438.  
  439. Whatever the current state of your settings, you can get a Text
  440. Only translation by holding down the Option key at the time that
  441. execution begins. With the Open... button, you would hold down
  442. Option as you hit the button. With a D&D batch, you would hold it
  443. down as the batch begins. The override of the settings will affect
  444. only that file or batch.
  445.  
  446. Mark My Words has a very large footprint in memory. Every major
  447. decision came down in favor of speed, so we are consistently
  448. trading memory for speed. The consequences are these: MMW is
  449. _substantially_ faster than WL+, even though it's doing a _lot_
  450. more; and it eats memory in big bites: the minimum memory required
  451. is approximately 384K + (sizeOfFile * 4). We ship with a 768K
  452. default, which is adequate for most files. If a file is too large,
  453. you'll get an Alert telling you how much to allocate.
  454.  
  455. The Preferences menu is familiar to anyone who's used anything
  456. recent by me. "Restore defaults" restores all controls to their
  457. "factory" default settings. "Restore saved prefs" resets all
  458. controls to their state at the last time the preferences were
  459. saved. And "Save preferences" saves the currently established
  460. settings; these are the settings that you will see with subsequent
  461. launches and after you hit "Restore saved prefs".
  462.  
  463. Where appropriate, CMD-C (Copy), CMD-X (Cut) and CMD-V (Paste)
  464. work, even though there is no Edit menu.
  465.  
  466. The settings in the dialogs are fairly self-explanatory. Everything
  467. is driven by the pop-ups in the Mark My Words Settings dialog box.
  468. Operations can be controlled in a gross fashion with the pop-ups,
  469. and, where appropriate, finer adjustments can be made in
  470. sub-dialogs.
  471.  
  472. The Output format pop-up is interesting. Text Only is obvious.
  473. XPress Tags is also familiar enough. But we are also, optionally,
  474. parsing to Em Software's Xtags, a superset of XPress Tags. The
  475. effect of other switches within the dialogs will depend on the
  476. state of this pop-up. For example, if you have Retain Pictures
  477. checked, embedded pictures will be saved to disk. If you are
  478. writing XPress Tags, it will be up to you to get those pictures
  479. into Quark. But if you are writing Xtags, we're plugging in Xtags
  480. coding to embed the picture in the stream. (Necessarily, pictures
  481. are never other than PICTs (i.e., RIP-crashers), because that's all
  482. that Word will store; they are named intelligently
  483. ("YourFileName¶001", etc.) and live in the same folder as the
  484. _original_ Word source file; with Xtags, the size, scaling, and
  485. aspect ratios are maintained, but you are advised to examine them
  486. to make sure they'll fit in your text link.)
  487.  
  488. In the same respect, the effects of tables and other in-line
  489. elements depend on your choice of formats. With Xtags, we are
  490. doing as much as possible to maintain the original coding. As
  491. above, you'll need to make sure that things fit.
  492.  
  493. And: this may seem like overkill, given that most people don't use
  494. these features of Word. They're included because: 1. some people
  495. _do_, and 2. given that we now have a convenient way of doing this
  496. stuff (by means of Xtags), it seems reasonable to suppose that
  497. we'll find ways of taking better advantage of these features. For
  498. example, Word's multi-cell tables, in conjunction with Xtags and
  499. Torquemada, give us a way of producing side-by-side tables such as
  500. we haven't seen in a while. (Take note that this feature is not
  501. supported by Quark's Word filter.)
  502.  
  503. IMPORTANT: a Word file converted by Mark My Words to Xtags will
  504. choke the XPress Tags filter and vice versa. In theory, these two
  505. Xtensions are identical except for the Xtags extensions to the
  506. XPress Tags language. In practice, there are subtle differences,
  507. with the result that an MMW file written for one filter will not be
  508. compatible with the other. Not such a big deal: you just have to
  509. remember to use the filter you selected in MMW.
  510.  
  511. Output file type enables you to select the creator type of the TEXT
  512. files MMW will produce. This is one of those features that's more
  513. icing than cake, in my opinion. It means that you can double-click
  514. on a file created by MMW and have your editor of choice launch,
  515. instead of Mark My Words or the editor of _my_ choice (BBEdit).
  516. But: given that we live in the age of Drag & Drop (don't we?),
  517. double-click access to your editor is less vitally necessary than
  518. it was under System 6.
  519.  
  520. The Style sheets pop-up lets you control how much of Word's style
  521. definitions go out to the new file. Include definition writes out
  522. the full definition at the start of the file with any
  523. omitted/unsupported values omitted, which means they'll default to
  524. Quark's values for the BasedOn style. We surmise that people can
  525. have changed their default Normal in Quark, and, moreover, Normal
  526. can't be redefined from tags. So when we Include definition, we are
  527. showing Word's Normal as WordNormal=[S"Normal"]. That way, if there
  528. are exceptions to Word's Normal, they'll be preserved in the
  529. definition when the file gets to Quark. And if you've made changes
  530. to Quark's Normal, those will be retained where they are not
  531. overridden by exceptions in WordNormal. Note that all other styles
  532. BasedOn No Style continue to be BasedOn No Style. Also: when we are
  533. defining styles, we don't know yet if that style is actually used
  534. in the text. So all defined styles are shown, and you may want to
  535. chop some out prior to Getting Text.
  536.  
  537. Include name shows only the name of the style as it is called in
  538. the text. This is the one to use if you want to retain Word's
  539. naming convention, but expect to write all the style sheets in
  540. Quark (which policy is recommended). In this instance, Word's
  541. Normal is shown as Normal (i.e., BasedOn No Style), since there are
  542. no exceptions to preserve.
  543.  
  544. All to normal ignores all style definitions and calls and simply
  545. shows everything in the Normal style (which is either Quark's or
  546. your own edited default).
  547.  
  548. Ignore completely ignores styles, period. Use this when you have
  549. edited a previously Marked file and want to leave the styles alone.
  550.  
  551. The next three pop-ups are where the bullet hits the bone. And they
  552. demonstrate rather nicely, I think, why Shane and I deserve to win
  553. the award for User Interface design of the year (grin). What's
  554. going on is this: by means of these pop-ups, you can effect either
  555. wholesale or retail control over the conversion. "Retain all",
  556. "Retain defaults" and "Omit all" are wholesale controls, while
  557. "Custom settings..." permits you to tailor the conversion to your
  558. needs and tastes.
  559.  
  560. This is slick and quick. It keeps the number of choices in the main
  561. dialog to a manageable minimum and gives less-experienced users a
  562. lot of control without requiring a lot of hirsute knowledge. But
  563. there is more at work here: we are actually storing and accessing
  564. the settings in two ways. If you go into a "Custom settings..."
  565. sub-dialog and make some changes, then hit Okay, then change that
  566. pop-up to "Retain all", then "Save preferences", what will happen
  567. is this: both the settings in "Custom settings..." and the state of
  568. the pop-up will be saved as preferences for future use. When you
  569. convert a file, the state of the pop-up ("Retain all") will be
  570. honored, but the settings you established within the "Custom
  571. settings..." sub-dialog will persist, ready for easy access with
  572. the pop-up when you need them. There's a similar kind of speed-up
  573. going on _inside_ the "Custom settings..." sub-dialogs by means of
  574. the "All on", "All off" and "Prefs" buttons. Mark My Words is very
  575. fast at doing its job, converting Word files to Tagged text. But
  576. it's also designed to be very quick in its User Interface.
  577.  
  578. This is global information about the effect of the settings for the
  579. "Paragraph styling", "Character styling" and "Ancillary coding"
  580. pop-ups:
  581.  
  582. Retain all treats all check boxes as checked, treats all pop-ups as
  583. though the second selection were picked, and enables all text edit
  584. regions as their current settings. Retain defaults uses the factory
  585. defaults, which is what you see if you Restore Defaults then
  586. examine "Custom settings...". "Custom settings..." presents a
  587. dialog in which you can change things to your liking. Omit all
  588. treats all check boxes as unchecked, treats all pop-ups as though
  589. the first selection were picked, and ignores the contents of the
  590. text edit regions.
  591.  
  592. Within a "Custom settings..." sub-dialog, the "All on" button
  593. treats all check boxes as checked, treats all pop-ups as though the
  594. second selection were picked, and ignores the text edit regions.
  595. The "All off" button treats all check boxes as unchecked, treats
  596. all pop-ups as though the first selection were picked, and ignores
  597. the text edit regions. The "Prefs" button resets all controls,
  598. including the text edit regions, to their state when "Save
  599. preferences" was last selected.
  600.  
  601. Repeating: the custom settings are honored _only_ if the "parent"
  602. pop-up is set to "Custom settings..." If you make changes, hit OK,
  603. then select Retain all, the custom settings will be preserved but
  604. ignored during conversions, with the Retain all settings being used
  605. instead.
  606.  
  607. The "Paragraph styling: Custom settings..." is the simplest of the
  608. bunch: L&R indents, Leading, Alignment, Space before/after, Keep
  609. w/next, First Line indents, and Tab settings are all obvious. 
  610.  
  611. Important note about tabs: Word stores up to 50 tabs positions per
  612. paragraph, while Quark stores only 20. One Word tab (the vertical
  613. bar) can't be coded in Quark, so that saves us some slots. But:
  614. when we get to the 21st tab we're done; no others are (or can be)
  615. preserved. Moreover, the XPress Tags filter (as of version 1.5)
  616. inadvertently throws away the 20th tab, so, in effect, with XPress
  617. Tags (as of this writing) you have only 19 tabs; with Xtags, you
  618. have the full 20.
  619.  
  620. For Keep together we are ignoring Word, which asks for <*ktA>, and
  621. showing <*kt(2,2)> instead; the change reflects the difference
  622. between word processing and desktop publishing.
  623.  
  624. Rules/Borders is a mutant: it's based on the Borders style in Word.
  625. If a Border is established in a style's definition, we are showing
  626. it as either a rule above and/or rule below, which means that the
  627. rule(s) will show up in every paragraph in that style; nothing we
  628. can do about that, since it comes with the style. However, when a
  629. border is specified as an exception, we are showing the rule above
  630. only above the first paragraph affected, and the rule below only
  631. after the last paragraph, thus simulating as much as possible the
  632. effect of the box in the original file. Since Word users can be way
  633. stupid with boxes, and since, most often, their emphasis is
  634. entirely redundant, my advice is to turn this off. At best, it
  635. flags paragraphs thought worthy of emphasis by the WP operator.
  636.  
  637. There are a few things to discuss in "Character styling: Custom
  638. settings..."  Style changes, Size changes, Font changes, and Color
  639. changes are obvious.
  640.  
  641. The encapsulated font look-up table is used with Word 5.x files, so
  642. you'll get true font names even though the fonts may not be loaded
  643. or their numbers may be different. The font procedure for 4.0 files
  644. is the same as that documented with WL+ - local system name if
  645. fontID is loaded, fontID as text if not; that's what there is to go
  646. by, alas.
  647.  
  648. The colors are the same brain-dead colors as in WL+ - nothing for
  649. it, since that's all the colors there are.
  650.  
  651. Tracking changes: we're preserving this, but it's less than
  652. perfectly useful. Word "tracks" with absolute values expressed in
  653. quarter-points, range -7 to +56 quarter points. Too big for small
  654. sizes, too small for big sizes, too stupid for words. We are
  655. translating quarter points directly to Quark relative units. This
  656. is not always awful, but it does always require follow-up scrutiny.
  657.  
  658. Super/subscript are translated Greg's way: <V> or <V->, IOW Superior
  659. or Superior/Subscript. This seems to me to work better than Quark's
  660. Superscript and Subscript styles, which I find to be too horsey,
  661. and which frequently crash with the lines above and below. I have
  662. my preferences set this way: 33% offset and 50% horizontal and
  663. vertical scaling. Word uses pseudo-sub/superscripts in places
  664. (e.g., footnotes referenced by text instead of counters), and these
  665. are treated as any other styled text (which is what they are).
  666.  
  667. In the pop-ups: Hidden text: Omit throws it away. Retain retains
  668. the Hidden text as text, with no additional styling. Shade 0%
  669. retains it shaded 0, the way WL+ did it. Strike-thru retains it in
  670. the </> style. This option is there for this reason: Word's Table
  671. of Contents and Indexing tools use Hidden text, of course. If you
  672. elect to retain these features, you need some way of getting at the
  673. hidden entries. </> is a very uncommon styling option (with good
  674. reason!), so I selected it as a way of flagging this stuff. Why? I
  675. have hopes that some enterprising Xtension developer will take
  676. advantage of this free mark-up to write TOC and Indexing for Quark.
  677.  
  678. The Underlines conversion is pretty straightforward. Word has four
  679. types of underlines, while Quark has only two. The deficit is
  680. hardly to Quark's disadvantage - when was the last time you had a
  681. burning need for a dotted underline? In any case, each of Word's
  682. underline types can be either Ignored (i.e., passed as plain text),
  683. converted to Italic, converted to the Underline style, or converted
  684. to the Word Underline style. By default, Mark My Words converts all
  685. of Word's undlerlines to Italic, since this is usually what is
  686. meant (in DTP terms) by underscored text.
  687.  
  688. Ancillary coding... is where the rubber meets the road. You may be
  689. asking yourself, "Why all this damned UI?" The reason is this: if
  690. you know what you're doing, you can control every little last
  691. thing. If you don't, we're trying to make it easy for you to stay
  692. out of trouble. Ancillary coding... is the home of the stuff that
  693. it's fairly dangerous to play with (grin).
  694.  
  695. TOC entries and Index entries are discussed above. These switches
  696. control whether or not the Contents and Index subdocuments and the
  697. Index/TOC markers (".i.", ".c.") will be emitted into the text
  698. stream.
  699.  
  700. Page breaks allows or disallows page breaks (expressed as <\c>) in
  701. the text, including the Page Break Before styling command.
  702.  
  703. Headers/Footers controls whether or not these subdocuments will be
  704. emitted into the text stream.
  705.  
  706. Date/Time entries permits or forbids the insertion of text
  707. translations of Word's date/time variables. If checked, the dates
  708. and times will reflect the time of the conversion. This feature
  709. takes account of your current Control Panels settings for dates and
  710. times, so, presumably, they'll be dancing in the streets of old
  711. Budapest tonight...
  712.  
  713. Footnotes allows or disallows inclusion of the footnotes
  714. subdocument. Calls to footnotes in the text will remain, as is, in
  715. the text.
  716.  
  717. In-line pictures is Xtags coolness #1. If there are pictures in the
  718. file, if this box is checked, and if the output format is Xtags,
  719. the pictures will be saved to disk as PhotoShop PICTs and the
  720. appropriate Xtags coding will be plugged into the text. If the
  721. format is XPress Tags, the pictures will be saved to disk, but the
  722. user will be responsible for placing them. Equations made with
  723. Word's equations editor are encapsulated QuickDraw PICTs, which
  724. means they can be edited with a QuickDraw editor like MacDraw or
  725. Canvas, and they will produce device-independent, object-oriented
  726. images. Likewise, since PICTuresque can create PICTs with
  727. encapsulated PostScript, this feature is at least slightly more
  728. than interesting window dressing (grin).
  729.  
  730. In-line text boxes is Xtags coolness #2. This controls what happens
  731. with Word's in-line tables and Word 5.1's (incredibly stupid) drop
  732. caps. If checked, if Xtags, in-line text boxes will be parsed into
  733. Xtags boxes with the appropriate coding. The boxes are sized
  734. arbitrarily, so you'll either have to drag them out by hand or
  735. write Torque sets to change them. If not Xtags, in-line text is
  736. emitted as styled text. In the case of tables, cell and row
  737. boundaries are flagged with tabs.
  738.  
  739. MMW comments inserts readable comments into the text, where
  740. appropriate, if a feature is turned off. For instance, if Date/Time
  741. entries is turned off, and a date is found, the text "{{Date}}" is
  742. inserted at that spot. If you don't want comments inserted, uncheck
  743. this box. This is the list of possible comments:
  744.  
  745. {{Table cell}}
  746.  
  747. {{In-line box}}
  748.  
  749. {{Picture: NameOfFile¶000}} <-XPress Tags
  750.  
  751. {{Picture}} <-Text Only
  752.  
  753. {{Date}}
  754.  
  755. {{Time}}
  756.  
  757. {{Page number}}
  758.  
  759. {{Footnote separator}}
  760.  
  761. {{Footnote continuation}}
  762.  
  763. {{Formula}} <-refers to formula glossary text not equations
  764.  
  765. Many of the Ancillary coding switches, including MMW comments, have
  766. meaning even in a Text Only translation. For example, if Date/Time
  767. entries is checked, then the dates and times will be converted. If
  768. not, but MMW comments _is_, then the comment will be inserted. IOW,
  769. Text Only means what it says: any controls that would create new
  770. XPress tags are disabled, but the others remain in effect unless
  771. explicitly switched off.
  772.  
  773. Below all this are two text edit regions, one for the default
  774. XPress Tags version tag, which is also honored by Xtags, and one
  775. for the default Xtags translation table. Note that either of these
  776. can be "switched off" merely by deleting the text. Note also that
  777. each, if present, is inserted anew into a file, each time it passes
  778. through Mark My Words. So, if you mark a file, then take it back to
  779. Word for further editing, then mark it again, the old version and
  780. Xtags &tt2 tags will be ripped out and replaced by whatever is the
  781. currently established default. FWIW, while the version tag for 3.2
  782. will be 1.6, MMW is writing XPress Tags 1.5/Xtags 1.0 compliant
  783. tags. Filter 1.6 offers very little new coding, and most of it is
  784. not relevant to Word. The only 1.6 construct in MMW is
  785. [S"BasedOnStyle","NextStyle"], used only in XPress Tags
  786. translations. Filter 1.5 ignores this construct, but filter 1.6
  787. will accept it _if_ your version tag is set for 1.60.
  788.  
  789.  
  790.  
  791. 4. Where the bodies are buried...
  792.  
  793. * I wish I had greater control over the in-line text boxes. I was
  794. compelled to use arbitrary box sizes because of the idiotic way
  795. Word stores the sizing information.
  796.  
  797. * The formula glossary text is far from ideal, largely because Word
  798. is interpreting formulae on the fly (and has a lot of positioning
  799. controls Quark doesn't have).
  800.  
  801. * The Rules/borders solution is the best answer we could come up
  802. with to an ugly problem.
  803.  
  804. * As regards running the same text through MMW more than once, the
  805. feature is robust but not fool-proof. If you're just doing text
  806. editing, set Style sheets to Ignore. Any character or paragraph
  807. property exceptions you introduce will be honored, but the style
  808. sheets won't be parsed. If, OTOH, you want to define new styles,
  809. you can. Just Include definition. Take note, however, that
  810. WordNormal and any other default styles you have defined (i.e.,
  811. present in all new documents) will be parsed again. You'll need to
  812. go through the styles and chop out the replacements. This is
  813. important because Quark does not redefine styles; the first
  814. definition found for a particular name is the one used, and later
  815. definitions under that name are ignored (this, essentially, is why
  816. you can't redefine Normal).
  817.  
  818.  
  819.  
  820. 5. Gloats and flourishes...
  821.  
  822. * Word, like Quark, is massively redundant. We are watching what
  823. we're doing as we work and we issue styling only where an actual
  824. change has occurred. No harm comes of writing extremely redundant
  825. Tags, as does the QXPTags export filter, but doing it this way
  826. makes things a lot easier on us wetware types.
  827.  
  828. * If you've used Quark's Word filter, you know that Quark and Word
  829. do not agree about what happens to character styling at style
  830. boundaries. Word retains the exceptions, while Quark wipes the
  831. slate and baselines everything to the style. Taking account of this
  832. conflict, Mark My Words reissues any pending styling exceptions
  833. when a style boundary is crossed. IOW, MMW tags behave like the
  834. Word file, and not like the Word-filter imported text.
  835.  
  836. * We are doing everything we can to shoehorn Word's 50 tabs into
  837. Quark's 20 slots. The sequence for an exception is delete, compact,
  838. add, sort, compact, with the whole point being never to waste a
  839. slot. Word's (wonderful!) vertical line tab is omitted, of course.
  840. But, at bottom, when we get to the 21st tab, we're done - the rest
  841. are tossed.
  842.  
  843. * It's _real_ fast... (grin)
  844.  
  845.  
  846.  
  847. 6. Mark My Words in real life...
  848.  
  849. The mis-selection business works like this: before we apply any
  850. styling, we are looking at the raw text. Where we spot an open
  851. angle bracket, we are looking ahead to see if it is legally
  852. terminated. If it isn't we are insulating it as "<\<>" (the XPress
  853. tags way of showing an open bracket as text). We are doing the same
  854. thing for illegal closing angle brackets ("<\>>"). That way, we can
  855. be assured that every angle bracket found in the text is part of a
  856. legal XPress tag. Then, when we get around to looking for
  857. improperly nested tags (e.g., <I<B>>, as shown above), we can
  858. easily switch things around without worrying that we're hosing good
  859. text.
  860.  
  861. Important: the MMW tag insulation is not as good as XP8's. We're
  862. not striving to identify improperly formatted tags, but, rather, to
  863. insulate the genuine impostors. Likewise: unlike XP8, we are not
  864. doing anything about "@" and "\" when they are used as text.
  865. Properly, these should be shown as <\@> and <\\>. To be safe(r),
  866. you should still run the MMW file through XP8. Then use Xtags, of
  867. course, since, while XPress tags filter 1.6 will be a lot better
  868. about this than 1.5, Xtags' error-reporting still blows it out of
  869. the water.
  870.  
  871. Moreover, you are ever and always on your own when it comes to tags
  872. that are legal but illogical. If you have this as text:
  873.  
  874. <<B>>
  875.  
  876. Mark My Words will know enough to make it look like legal XPress
  877. tags (<\<><B><\>>), but that <B> in the middle is legal and will
  878. pass the test of quality in MMW, in XP8, in XPress tags and in
  879. Xtags. Everything after it will be bold until it is turned off. In
  880. other words: while software can protect you from obvious,
  881. identifiable errors, it can never be a substitute for an active
  882. human intelligence.
  883.  
  884. On the same planet: if you have a file (like this one) that is
  885. filled with clearly legal XPress Tags that are _not_ intended to be
  886. interpreted as XPress Tags, you need to insulate them on your own,
  887. since no software is going to reject perfectly legal tags. You can
  888. search for, e.g., "<" and replace with "<\<>", but that seems to me
  889. to beg for errors. What I do is this: I search for "<" and replace
  890. with "«" (option-backslash; closing form is
  891. shift-option-backslash). That keeps approximately the same look,
  892. and it's easy enough to switch back when I get to XPress. The point
  893. is this: if it's not to be interpreted as a tag, it can't _look_
  894. like a legal tag.
  895.  
  896. Next up: Xtags looks for pictures only by absolute path (like
  897. Quark). I omitted paths in the picture specifications so you
  898. _could_ move the pics if you wanted; otherwise Xtags would insist
  899. they remain where birthed, and Quark would still only let you move
  900. them into the same folder as the Quark file without relinking.
  901. Ergo, move a standing Quark file or Save a new file into the folder
  902. where the pictures reside prior to doing Get Text With Xtags.
  903.  
  904. IMPORTANT (and easy to forget): If the Quark file and the pictures
  905. are not resident in the same folder, Xtags won't find them.
  906.  
  907. On the point: those Xtags text and picture boxes are cool, but each
  908. one is a Quark object. That means that each one takes time to
  909. create, and more time, ever and always, for Quark to manage. A word
  910. to the wise is sufficient: if you create a file with thousands of
  911. objects, expect to do a lot of waiting...
  912.  
  913. And: if you don't have an Xtags translate table, delete the text
  914. for it in in Ancillary coding and Save Prefs. If no text, no tag. I
  915. myself have a table named "YourTableName" (grin - but I'm not
  916. kidding).
  917.  
  918. Mark My Words will not process Fast Saved files. Sorry. We had
  919. wanted to do it with this version, but I deliberately walked away
  920. from it because Word files are entirely too attenuated as it is. If
  921. you select or D&D a Fast Saved file, MMW will display an Alert then
  922. get on to the next task.
  923.  
  924. There are a certain few other occasions where Mark My Words will
  925. fail (ever gracefully) to process a file. For example, files
  926. produced by versions of Word earlier than 4.0 are politely refused.
  927. And: files that are excessively complicated are deflected. In the
  928. former event, open the file from Word and Save As in a version less
  929. historic. In the latter case, chop the file up into smaller chunks
  930. and feed them to MMW in a batch. For reference: a file will be
  931. refused on the grounds of complexity if it entails more than 8192
  932. character styling or 8192 paragraph styling changes. This limit is
  933. eight times that imposed by WordLess Plus, and you may be delighted
  934. to hear that we haven't been able to hit it in extremely
  935. complicated testing files weighing in at over a quarter-megabyte.
  936. In other words, complexity is a non-issue.
  937.  
  938. Real life: Word plus Mark My Words make a better front end to Quark
  939. than anything we now have available. In the long run, I intend to
  940. make something better, but this will do for now. The advantages are
  941. these: You can draft as Styled Text, using the familiar Keyboard
  942. Equivalents, as opposed to typing verbose and obscure XPress Tags.
  943. Moreover, the people who type for you can give you what you need
  944. without your having to teach them very much. The resultant files
  945. can be run through Mark My Words, Torquemada, and XP8. And then, if
  946. you want, you can open them _again_ from Word, do the edits as
  947. Styled Text, run through Mark My Words again, etc. You can work
  948. with tags without having to type (and _check!_) each and every one.
  949.  
  950. If you are lucky enough to have people typing for you who do what
  951. you say, you can introduce their files to Torquemada and have a
  952. great deal of the up-front labor of your jobs done for free. For
  953. example, if some words of a paragraph need to swap out to a PMS
  954. color, you can have the keyboarder style that text as "Blue", then
  955. search in Torquemada, replacing "Blue" with the true name of the
  956. color. Or you can use XP8's mnemonics or a code of your own
  957. devising to flag special situations and dingbat characters, then
  958. use XP8 or Torquemada to plug in the true XPress Tags coding.
  959.  
  960. Unless you turn this feature off, every Mark My Words file begins
  961. with the XPress Tags version tag ("<v1.60><e0>"). This is included
  962. because Mark My Words makes use of the Baseline Shift tag
  963. ("<bXX>"), and Quark varies its interpretation of that tag based on
  964. the presence or absence of the version tag. Without it, the file is
  965. interpreted as being a Quark 3.0 file, and the effect of the
  966. Baseline Shift is inverted (viz., positive values shift down
  967. instead of up, replicating a bug in the XPress Tags filter that
  968. shipped with Quark 3.0). If you are still running XPress 3.0
  969. (why?), you will need to do two things: lose the version tag and
  970. invert the signs of all baseline shifts. These Torquemada strings
  971. should serve to do both:
  972.  
  973. <v^?^p        {nothing}        Omit the version tag
  974.  
  975. -b^#        |b^#            Mark the negative values
  976.  
  977. b^#            -b^#            Invert the positive values
  978.  
  979. |-            {nothing}        Remove the marks
  980.  
  981. In the same neighborhood: the second half of the version tag
  982. ("<e0>") is a language identifier. If you are working with a
  983. non-English version of Quark, you may need to change this to the
  984. code shown when you Save Text as XPress Tags from within Quark.
  985.  
  986. Likewise: we are converting the QuickDraw colors in Word using
  987. their English names (e.g., "Black", "Blue"). I don't know if
  988. non-English versions of Quark tags use non-English names for the
  989. QuickDraw colors, but, if they do, and if you're competent with
  990. ResEdit, you can "internationalize" these colors fairly simply by
  991. editing STR# resource number 133. Change only the literal name of
  992. the color, leaving the quote marks alone. Sequence is significant,
  993. so translate the color names "in place" (e.g., "Schwarz" for
  994. "Black", not "Blue"). If you work in multiple languages, you can
  995. spawn versions of MMW, one for each language you use. Presumably,
  996. nothing else about XPress tags is language-sensitive, but if that
  997. turns out not to be the case, do please let me know. We strive to
  998. make our software as international as possible, and we fail through
  999. ignorance rather than lack of trying.
  1000.  
  1001. And one more: as a default, we are showing Word's numbered
  1002. footnotes in Quark's Superior style. Alas, there is no clear-cut
  1003. way of dealing with footnotes flagged manually with user-supplied
  1004. text. These are being shown the way that Word is storing them. For
  1005. example, they might come across as "<z9.0b3.0>". If you have
  1006. footnotes of both types in the same file, you'll need to search to
  1007. bring them into concordance.
  1008.  
  1009. Useful: Word 5.x does an excellent job of filtering a number of
  1010. alien file formats. It sees all its own historical versions, of
  1011. course, plus all of the many version of DOS Word. But it also does
  1012. a great job with, e.g., WordPerfect for Mac and DOS. The best thing
  1013. to do with an alien file is to get it into Word in some way,
  1014. preferably from Word 5.x, from MacLink or Software Bridge
  1015. otherwise. Then Save As a Word 5.x file and run the resultant file
  1016. through Mark My Words. This is the most efficient means you have of
  1017. retaining the maximum amount of supplied paragraph and character
  1018. formatting.
  1019.  
  1020. Eminently nerd-like hack: every piece of software by me that has a
  1021. Preferences menu (Shane the Plane, Clip 'n' Save, ShawBerry, and
  1022. Mark My Words) stores its preferences in the resource fork of the
  1023. software itself. The Default prefs are stored in 'PREF' resource
  1024. 128, and the Saved prefs are stored in PREF 129. When you Save
  1025. preferences, PREF 129 is re-written with your new settings. If you
  1026. are comfortable with ResEdit, you can use it to give yourself two
  1027. sets of stored preferences. Do this (on a _copy_ of Mark My Words,
  1028. of course):
  1029.  
  1030. 1. Establish your second-favorite settings and Save preferences.
  1031. Quit.
  1032.  
  1033. 2. Open the copy of Mark My Words from ResEdit, and navigate your
  1034. way to PREF 129. Select all and Copy.
  1035.  
  1036. 3. Open PREF 128, Select All and Paste. Save and Close the file.
  1037. The two resources are now identical, with both containing your
  1038. second-favorite settings.
  1039.  
  1040. 4. Launch Mark My Words again and establish your (first-)favorite
  1041. settings and Save preferences. Now when you do Restore defaults,
  1042. you'll get your second-favorite settings, and when you do Restore
  1043. saved prefs, you'll get your (first-)favorite settings, which will
  1044. also be loaded automatically with every subsequent launch.
  1045.  
  1046.  
  1047.  
  1048. 7. About Greg Swann...
  1049.  
  1050. Okay, here's the deal: I'm not just a developer, I'm a user of
  1051. software as well. I make about half of my money doing Desktop
  1052. Publishing. In consequence, I have a pretty clear idea of how to
  1053. focus utilities designed to plug gaps in the functionality of major
  1054. applications. I am quite sure there are a _lot_ of developers
  1055. brighter than I am. But the evidence of experience suggests that
  1056. few of them have my advantage of living on both sides of the line,
  1057. so to speak.
  1058.  
  1059. What does this mean?
  1060.  
  1061. First, it means that I have written a _lot_ of mission-critical
  1062. utilities in support of the software categories of interest to me:
  1063. file management, font management, automated text processing,
  1064. PostScript-processing, and automated DTP-software preparation. All
  1065. but four of these utilities are FreeWare (the exceptions being Mark
  1066. My Words and the three packages discussed below) and are available
  1067. on CompuServe (GO DTPForum, BROwse on 70640,1574) and other
  1068. electronic information services (including any service offering
  1069. access to the Arizona Macintosh User's Group BBS-In-A-Box CD-ROM).
  1070.  
  1071. Second, it means that if you are likewise interested in these
  1072. software categories, it behooves you to support my work. Fanmail is
  1073. always nice, of course, but remuneration is the sincerest form of
  1074. flattery (grin). Seriously: this is a business, even if a
  1075. microscopically small one. It has been worthwhile so far because
  1076. the other things commanding my attention have not been as
  1077. lucrative. But that is changing (of course, and obviously,
  1078. _because_ of all the software). I can make a _lot_ of money writing
  1079. custom software for contracted clients. And I can streamline my own
  1080. production work without having to monkey-proof and document my
  1081. tools. So: if I am to keep doing this, I have to make it pay. If
  1082. you _want_ me to keep doing it, you have to pay me. It's that
  1083. simple.
  1084.  
  1085. In many ways, retail software is simpler. You pay or you don't
  1086. play, and no one has any illusions. The difference is, the
  1087. developer needs a _much_ larger capital commitment, and he needs to
  1088. surround himself with babbling morons in suits who might - just
  1089. possibly - be good for something other than chuckling about
  1090. football. Electronically distributed software gets around that
  1091. trap, but introduces the problem exposed here: the ambiguity of the
  1092. sales transaction results in a lot of prostrate begging by
  1093. developers. I don't beg, but I don't work for free except on my own
  1094. terms for my own good reasons.
  1095.  
  1096. There are three possible "futures" for authors of electronically
  1097. distributed software. 1. The rewards do not justify the effort, so
  1098. the author goes and plays tennis or something. 2. The author
  1099. produces software as an after-work hobby and continues to do so
  1100. more or less irrespective of user-response (some of the best and
  1101. worst FreeWare comes out of this category). 3. The author's growing
  1102. reputation results in him getting more contracted custom
  1103. programming work, worth more money, to the point that he no longer
  1104. has time to produce electronically distributed software.
  1105.  
  1106. It is the last that is happening to me, and this is why you need to
  1107. support my work, if you want it to continue. I'll do all right
  1108. whether I'm working on problems that confront you or on the
  1109. problems of some corporation. But: if you are using software by me
  1110. that has a commercial version (and all of them are discussed here),
  1111. and if you want me to _continue_ thinking about your problems,
  1112. rather than the problems of Consolidated MediCalc - you know what
  1113. to do...
  1114.  
  1115. These are my commercial programs (excluding Mark My Words, about
  1116. which you might already have heard a word or two (grin)):
  1117.  
  1118. XP8 - a very intelligent file filter that cleans up and makes the
  1119. filthiest text QuarkXPress-ready. Among many other features, it
  1120. offers DOS-file reformatting, financial-text clean-up, garbage
  1121. disposal, typographic quality enhancement, and the best quote
  1122. conversion we know of. The ShareWare version of XP8 (v1.0.0) can be
  1123. found on CIS, GO DTPForum, Library 5, under the name XP8.SEA. It is
  1124. also included on the distribution disk for the unrestricted version
  1125. of Mark My Words. The current commercial version is v1.0.6 and
  1126. offers a great many enhancements over the ShareWare version.
  1127.  
  1128. Torquemada The Inquisitor - batch global search and replace
  1129. software with wildcards, pattern matching, string substitution, et
  1130. very cetera. With Drag & Drop under System 7, you can run up to 640
  1131. searches on up to 128 files in one batch. Features the most
  1132. intelligent case-conversion we know of. The most-recent FreeWare
  1133. version (1.1.0) can be found on CIS, GO DTPForum, Library 5, under
  1134. the name TORQUE.SEA. It is also included on the distribution disk
  1135. for the unrestricted version of Mark My Words. The current
  1136. commercial version is 1.2.2, offering a great many enhancements,
  1137. including new "wildthings" and a _lot_ of new User Interface power.
  1138.  
  1139. Shane the Plane 2.0.0 - file and font attribute editing utility.
  1140. Interactively or in Drag & Drop batches, permits you to change the
  1141. Creator/Type of files, their created/modified dates and times, a
  1142. host of significant Finder flags, plus a lot more. Makes files
  1143. invisible/visible, makes fonts behave like files by removing their
  1144. BNDL resources, batch "pastes" custom icons, intelligently renames
  1145. and/or "slugs" files, et very cetera. A demonstration version
  1146. (fully functional but limited to 32 launches) can be found on CIS,
  1147. GO DTPForum, Library 12, under the name SPDEMO.SEA. It is also
  1148. included on the distribution disk for the unrestricted version of
  1149. Mark My Words.
  1150.  
  1151. (While I've vectored all the files toward CIS, my primary haunt,
  1152. they are also available on other services, and on any BBS which has
  1153. the most recent version of AMUG's BBS-In-A-Box CD-ROM on line.)
  1154.  
  1155. Shane the Plane 2.0.0 is sold on these terms:  (US)$40 each, per
  1156. license. Two to 10 licenses are $35 each, and 11 or more are $30
  1157. each.
  1158.  
  1159. Mark My Words, XP8 and Torquemada are each sold under these terms:
  1160. (US)$50 each, per license. Two to 10 licenses are $45 each, and 11
  1161. or more are $40 each. These three programs will eventually be
  1162. rolled into a stand-alone text editor cum word processor currently
  1163. in design with the working name "MyEditor". You will be entitled to
  1164. a 25% discount on the price of the MyEditor, when it is released,
  1165. for each of these utilities you have purchased and registered. In
  1166. other words, if you own XP8, your discount will be 25%. If you own
  1167. XP8 and Torquemada, it will be 50%. And if you own all three, you
  1168. will be entitled to a 75% discount. (This discount does not apply
  1169. to Shane the Plane, which is establishing its own upgrade path.)
  1170.  
  1171. If you want to buy any or all of these programs, send a check or
  1172. money order* to:
  1173.  
  1174.     Greg Swann
  1175.     P.O. Box 1724
  1176.     Andover, MA 01810
  1177.  
  1178.     or
  1179.  
  1180.     1331 West Baseline Road, #236
  1181.     Mesa, AZ 85202
  1182.  
  1183. *Outside the U.S., you may send cash at your own risk, if exchange
  1184. issues make that expedient.
  1185.  
  1186. These programs are included on the distribution disk for the
  1187. unrestricted version of Mark My Words:
  1188.  
  1189. * Mark My Words v1.0.0 - discussed here at some length (!)
  1190.  
  1191. * XP8 v1.0.0 - ShareWare version of the commercial software
  1192.  
  1193. * Torquemada the Inquisitor v1.1.0 - FreeWare version of the
  1194.   commercial software
  1195.  
  1196. * A Sort of a Kind - very fast, very robust text file sorting utility
  1197.  
  1198. * FontFischer - font specimen book creation utility
  1199.  
  1200. * PixPex - Drag & Drop Xtags picture box creation utility
  1201.  
  1202. * ShawBerry - text file merging utility
  1203.  
  1204. Plus some other stuff...
  1205.  
  1206.  
  1207.  
  1208. 8. Conclusion...
  1209.  
  1210. Jeez, haven't you had _enough_...? (grin)
  1211.  
  1212. Seriously: that's it. If you have any questions or problems, the
  1213. easiest way to get hold of me is on CompuServe at 70640,1574
  1214. (Internet 70640.1574@compuserve.com). If you can't do that, you can
  1215. snail mail me at:
  1216.  
  1217.     Greg Swann
  1218.     P.O. Box 1724
  1219.     Andover, MA 01810
  1220.  
  1221.     or
  1222.  
  1223.     1331 West Baseline Road, #236
  1224.     Mesa, AZ 85202
  1225.  
  1226. Why two addresses? The Arizona address will result in 2-3 days
  1227. faster turnaround. The P.O. Box in Massachusetts is still the
  1228. "official" address, because we'll be moving again within the year.
  1229. If we knew for sure we'd be buying a house in Mesa, we'd just get a
  1230. P.O. Box here. But since we could end up a fair distance from here,
  1231. we kept the Andover box on a forwarding basis, so as to avoid
  1232. either losing mail when a temporary forwarding order gives out or
  1233. driving a lot of miles just to pick up mail. Memo to USPS:
  1234. WATS-like mailing addresses would be way cool.
  1235.  
  1236. Last licks: it turns out that the Suns died in the NBA finals, so
  1237. now Barkley can rest. Miles to go before _I_ sleep, but this is a
  1238. big weight off my shoulders. Here's hoping it buys a nap or two
  1239. for you!
  1240.